package com.example.testproject.activity

import android.os.Bundle
import androidx.appcompat.app.AppCompatActivity
import androidx.databinding.DataBindingUtil
import com.example.testproject.R
import com.example.testproject.databinding.X5WebViewDataBinDing
import com.tencent.smtt.export.external.interfaces.JsPromptResult
import com.tencent.smtt.export.external.interfaces.JsResult
import com.tencent.smtt.sdk.WebChromeClient
import com.tencent.smtt.sdk.WebSettings
import com.tencent.smtt.sdk.WebView
import kotlinx.android.synthetic.main.activity_x5_web_view.*

/**
 *
 * @ClassName: X5WebViewActivity
 * @Author: android 超级兵
 * @CreateDate: 12/17/21$ 9:55 AM$
 * TODO 腾讯 X5内核WebView 官方文档:https://x5.tencent.com/docs/webview.html
 */
class X5WebViewActivity : AppCompatActivity() {
    lateinit var dataBinDing: X5WebViewDataBinDing
    override fun onCreate(savedInstanceState: Bundle?) {
        super.onCreate(savedInstanceState)
        dataBinDing = DataBindingUtil.setContentView(
            this,
            R.layout.activity_x5_web_view
        )

        val settings: WebSettings? = mWebView?.settings
        settings?.javaScriptEnabled = true
        settings?.allowFileAccess = true

        settings?.builtInZoomControls = true
        settings?.setSupportZoom(true)
        settings?.displayZoomControls = false // 不显示缩放按钮

//        dataBinDing.mWebView.loadUrl("http://www.baidu.com/")
        dataBinDing.mWebView.loadUrl("file:///android_asset/index.html?https://www.gjtool.cn/pdfh5/git.pdf")

//        mWebView.webChromeClient = object : WebChromeClient() {
//            override fun onJsAlert(
//                webview: WebView?,
//                url: String?,
//                message: String?,
//                result: JsResult?
//            ): Boolean {
//                //可以弹框或进行其它处理，但一定要回调result.confirm或者cancel
//                //这里要返回true否则内核会进行提示
//                return true
//            }
//
//            override fun onJsConfirm(
//                webview: WebView?,
//                url: String?,
//                message: String?,
//                result: JsResult?
//            ): Boolean {
//                //可以弹框或进行其它处理，但一定要回调result.confirm或者cancel
//                return true
//            }
//
//            override fun onJsBeforeUnload(
//                webview: WebView?,
//                url: String?,
//                message: String?,
//                result: JsResult?
//            ): Boolean {
//                //可以弹框或进行其它处理，但一定要回调result.confirm或者cancel
//                return true
//            }
//
//            override fun onJsPrompt(
//                webview: WebView?,
//                url: String?,
//                message: String?,
//                defaultvalue: String?,
//                result: JsPromptResult?
//            ): Boolean {
//                //可以弹框或进行其它处理，但一定要回调result.confirm或者cancel，confirm可以将用户输入作为参数
//                return true
//            }
//        }
    }
}